package interfaz;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;


import beans.ComparativaBean;
import beans.CotizacionBean;
import beans.EntidadBean;
import beans.FacturaBean;
import beans.ListaDePreciosBean;
import beans.OrdenDePedidoBean;
import beans.RodamientoBean;
import beans.SolicitudCotizacionBean;




public interface TDAManejoDatos extends Remote {
	
	public List<RodamientoBean> getRodamientosValidos() throws Exception;
	public boolean existeClienteByCuil(String cuitCliente)throws RemoteException, Exception;
	public SolicitudCotizacionBean crearSolicitudCotizacion(SolicitudCotizacionBean solicitud, int sucursal)throws RemoteException, Exception;
	public CotizacionBean generarCotiacion(SolicitudCotizacionBean s) throws Exception;
	public List<ComparativaBean> obtenerComparativaPorRodamiento() throws Exception;
	public List<ComparativaBean> obtenerComparativaPorNroSerie() throws Exception;
	public List<ComparativaBean> obtenerComparativaPorMarca() throws Exception;
	public void registrarOrdenDePedido(OrdenDePedidoBean opb, int sucursal) throws Exception;
	public List<FacturaBean> generarFacturas(int odv) throws Exception;
	public EntidadBean buscarCliente(String cuil) throws Exception;
	public EntidadBean buscarProveedor(String cuil) throws Exception;
	public void crearListaDePrecio(ListaDePreciosBean lista) throws Exception;
	public List<EntidadBean> getClientesActivos() throws Exception;
	public boolean validarODVExistente(Integer sucursal) throws Exception;
	public void eliminarCliente(EntidadBean cliente) throws Exception;
	public void modificarCliente(EntidadBean cliente, String iva,
			String razonSocial) throws Exception;
	public List<FacturaBean> getFacturas() throws Exception;
	public List<EntidadBean> getProveedoresActivos()throws Exception;
	void altaProveedor(EntidadBean eb) throws Exception;
	void eliminarProveedor(EntidadBean cliente) throws Exception;
	void modificarProveedor(EntidadBean cliente, String razonSocial)
			throws Exception;
	List<CotizacionBean> getCotizacionesByOdv(Integer sucursal) throws Exception;
	void altaCliente(EntidadBean eb) throws Exception;;
}